Recent years, various types of personal computers such as notebook types and desktop types are widely available. For these types of computers, there has been an increasing demand for enhancing their data processing abilities such as in the reproduction of high definition video image data by software, and the performance of the CPU has been enhanced nearly to its limitation.
Under such circumstances, recently, there are such computers being developed in which CPUs are mounted, or those which are installed with a CPU containing CPU cores built therein. That is, a program is processed in parallel so as to shorten the time required for the process, thereby enhancing the performance of the computer. There have been various proposals for the mechanism of executing the parallel processing of a program efficiently.
For example, Jpn. Pat. Appln. KOKAI Publication No. 2007-328415 discloses a method of controlling a (heterogeneous) multiprocessor, in which a value obtained by addition of a processing cost and a transfer cost in the first processor and another value obtained by addition of a processing cost and a transfer cost in the second processor are compared with each other, and tasks are assigned to the processors.
The above-mentioned document discloses the technique of a complier. The number of CPU cores differs from one multiprocessor to another in those which are currently commercially available. Therefore, it is necessary to provide a program which has been complied in accordance with the number of CPU cores.